home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / p_man / cat3 / complib / cfftm1d.z / cfftm1d
Encoding:
Text File  |  1998-10-30  |  6.5 KB  |  133 lines

  1.  
  2.  
  3.  
  4. ccccffffffffttttmmmm1111dddd,,,,zzzzffffffffttttmmmm1111dddd((((3333FFFF))))                                        ccccffffffffttttmmmm1111dddd,,,,zzzzffffffffttttmmmm1111dddd((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ccccffffffffttttmmmm1111dddd,,,, zzzzffffffffttttmmmm1111dddd ---- Multiple 1D, complex-to-complex, Fast Fourier
  10.      Transforms.
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSYYYYSSSS
  13.      _F_o_r_t_r_a_n :
  14.      ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ccccffffffffttttmmmm1111dddd(((( ssssiiiiggggnnnn,,,, nnnn,,,, pppp,,,, aaaarrrrrrrraaaayyyy,,,, iiiinnnncccc,,,, llllddddaaaa,,,, ccccooooeeeeffff ))))
  15.           iiiinnnntttteeeeggggeeeerrrr            ssssiiiiggggnnnn,,,, nnnn,,,, pppp,,,, iiiinnnncccc,,,, llllddddaaaa
  16.           ccccoooommmmpppplllleeeexxxx           aaaarrrrrrrraaaayyyy((((llllddddaaaa,,,,pppp)))),,,, ccccooooeeeeffff((((nnnn++++11115555))))
  17.  
  18.      ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee zzzzffffffffttttmmmm1111dddd(((( ssssiiiiggggnnnn,,,, nnnn,,,, pppp,,,, aaaarrrrrrrraaaayyyy,,,, iiiinnnncccc,,,, llllddddaaaa,,,, ccccooooeeeeffff ))))
  19.           iiiinnnntttteeeeggggeeeerrrr            ssssiiiiggggnnnn,,,, nnnn,,,, pppp,,,, iiiinnnncccc,,,, llllddddaaaa
  20.           ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx    aaaarrrrrrrraaaayyyy((((llllddddaaaa,,,,pppp)))),,,, ccccooooeeeeffff((((nnnn++++11115555))))
  21.  
  22.  
  23.      _C :
  24.      ####iiiinnnncccclllluuuuddddeeee <<<<fffffffftttt....hhhh>>>>
  25.      iiiinnnntttt ccccffffffffttttmmmm1111dddd (((( iiiinnnntttt ssssiiiiggggnnnn,,,, iiiinnnntttt nnnn,,,, iiiinnnntttt pppp,,,, ccccoooommmmpppplllleeeexxxx ****aaaarrrrrrrraaaayyyy,,,,
  26.                iiiinnnntttt iiiinnnncccc,,,, iiiinnnntttt llllddddaaaa,,,, ccccoooommmmpppplllleeeexxxx ****ccccooooeeeeffff))));;;;
  27.      iiiinnnntttt zzzzffffffffttttmmmm1111dddd (((( iiiinnnntttt ssssiiiiggggnnnn,,,, iiiinnnntttt nnnn,,,, iiiinnnntttt pppp,,,, zzzzoooommmmpppplllleeeexxxx ****aaaarrrrrrrraaaayyyy,,,,
  28.                iiiinnnntttt iiiinnnncccc,,,, iiiinnnntttt llllddddaaaa,,,, zzzzoooommmmpppplllleeeexxxx ****ccccooooeeeeffff))));;;;
  29.  
  30.  
  31. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  32.      ccccffffffffttttmmmm1111dddd and zzzzffffffffttttmmmm1111dddd compute the complex Fourier transform of P complex
  33.      sequences of N samples each. The k-th index F(k) of the Transform of an N
  34.      sample sequence f(i) is equal to:
  35.           F(k) = Sum ( W^(i*k) * f(i) ), for i =0, ..., (N-1)
  36.                W = exp( (Sign*2*sqrt(-1)*PI) / N )
  37.  
  38.  
  39.      The Fourier transforms are computed in-place so the input sequence is
  40.      overwritten by the Fourier transform output.
  41.  
  42.  
  43. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  44.      SSSSIIIIGGGGNNNN ---- Integer specifying which sign to be used for the expression of W
  45.      (see above) - must be either +1 or -1.
  46.      Unchanged on exit.
  47.  
  48.      NNNN ---- Integer, the number of samples in each sequence.
  49.      Unchanged on exit.
  50.  
  51.      PPPP ---- Integer, the number of sequences.  Unchanged on exit.
  52.  
  53.      AAAARRRRRRRRAAAAYYYY ---- Array containing the samples of the sequence to be transformed.
  54.      On input, the element "i" of the sequence "j" is stored as A(i*inc,j) in
  55.      _F_o_r_t_r_a_n , and A[i*inc+j*lda] in _C.
  56.      On exit, the array is overwritten by its transform.
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ccccffffffffttttmmmm1111dddd,,,,zzzzffffffffttttmmmm1111dddd((((3333FFFF))))                                        ccccffffffffttttmmmm1111dddd,,,,zzzzffffffffttttmmmm1111dddd((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      IIIINNNNCCCC ---- Integer, increment between two consecutive elements of a sequence.
  75.      Unchanged on exit.
  76.  
  77.      LLLLDDDDAAAA ---- Integer, leading dimension: increment between the first samples of
  78.      two consecutive sequences. Unchanged on exit.
  79.  
  80.      CCCCOOOOEEEEFFFFFFFF ---- Array of at least ( N + 15 ) elements.  On entry it contains the
  81.      Sines/Cosines and factorization of N. COEFF needs to be initialized with
  82.      a call to cfftm1di or zfftm1di.  Unchanged on exit.
  83.  
  84.  
  85. EEEExxxxaaaammmmpppplllleeee ooooffff CCCCaaaalllllllliiiinnnngggg SSSSeeeeqqqquuuueeeennnncccceeee
  86.      Compute 1D FFTs computed for 64 sequences of 1024 complex values each.
  87.      The elements of each sequence are stored with increment (stride) 1, and
  88.      the offset between the first element of two succesive sequences (leading
  89.      dimension) is 2049.
  90.      _F_o_r_t_r_a_n
  91.           complex array(0:2049-1,0:64-1), coeff(1024+15)
  92.           call cfftm1di( 1024, coeff)
  93.           call cfftm1d( -1, 1024, 64, array, 1, 2049, coeff)
  94.  
  95.      _C
  96.           #include <fft.h>
  97.           complex array[64*2049], *coeff;
  98.           coeff = cfftm1di( 1024, NULL);
  99.           cfftm1d( -1, 1024, 64, array, 1, 2049, coeff);
  100.  
  101.  
  102. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  103.      fft, cfftm1di, zfftm1di
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.